package com.yixun.qfbao.apidto;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

import org.springframework.util.CollectionUtils;

import com.yixun.qfbao.model.Model;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * @author zilong.liu
 * @date 2021-2-19
 *
 * desc:
 *     
 */
@Data
public class ModelResDto implements Serializable {

	private static final long serialVersionUID = -2375348367543417171L;
	
	@ApiModelProperty("id")
	private long id;
	
	@ApiModelProperty("名称 ")
	private String name;
	
	@ApiModelProperty("展示类型， 0文本、1图片")
	private String displayType;
	
	@ApiModelProperty("模板展示状态，0不显示 1展示")
	private String displayStatus;
	
	@ApiModelProperty("模板展示状态，0不必填 1必填")
	private String requiredStatus;
	
	/**
	 * 转换model集合成为当前返回值的集合
	 * @param modelList
	 * @return
	 */
	public static List<ModelResDto> listConvertModelToModelResDto(List<Model> modelList){
		if(CollectionUtils.isEmpty(modelList)) {
			return null;
		}
		List<ModelResDto> modelResDtoList = new ArrayList<>(modelList.size());
		for (Model model : modelList) {
			ModelResDto modelResDto = convertModelToModelResDto(model);
			modelResDtoList.add(modelResDto);
		}
		return modelResDtoList;
	}
	
	/**
	 * 转换model成为当前返回值
	 * @param modelList
	 * @return
	 */
	public static ModelResDto convertModelToModelResDto(Model model){
		if(model == null) {
			return null;
		}
		ModelResDto modelResDto = new ModelResDto();
		modelResDto.setId(model.getId());
		modelResDto.setDisplayStatus(model.getDisplayStatus());
		modelResDto.setRequiredStatus(model.getRequiredStatus());
		modelResDto.setDisplayType(model.getDisplayType());
		modelResDto.setName(model.getName());
		return modelResDto;
	}
}
